add_executable(testzfp testzfp.cpp)
target_link_libraries(testzfp zfp)
target_compile_definitions(testzfp PRIVATE ${zfp_compressed_array_defs})

option(ZFP_BUILD_TESTING_SMALL "Enable small-sized array testing" ON)
if(ZFP_BUILD_TESTING_SMALL)
  foreach(D IN ITEMS 1 2 3 4)
    foreach(P IN ITEMS 32 64)
      add_test(NAME small-arrays-${D}d-fp${P} COMMAND testzfp small ${D}d fp${P})
    endforeach()
  endforeach()
endif()

option(ZFP_BUILD_TESTING_LARGE "Enable large-sized array testing" OFF)
if(ZFP_BUILD_TESTING_LARGE)
  foreach(D IN ITEMS 1 2 3 4)
    foreach(P IN ITEMS 32 64)
      add_test(NAME large-arrays-${D}d-fp${P} COMMAND testzfp large ${D}d fp${P})
    endforeach()
  endforeach()
endif()
